The keyword ORDER BY is used to sort the result set in ascending or descending order.
SQL ORDER BY sorts records in ascending order by default. To sort records in descending order, use the optional DESC keyword.
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC
The following is a sample from the "Customers" table of the "Northwind" database:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
The following SQL statement selects all customers from the "Customers" table, sorted by the "Country" ("Country") column:
Run SQLSELECT * FROM Customers
ORDER BY Country
The following SQL statement selects all customers from the "Customers" table, sorted in descending order (DESCending) by the "Country" ("Country") column:
Run SQLSELECT * FROM Customers
ORDER BY Country DESC
The following SQL statement selects all customers from the Customers table, sorted by the columns "Country" and "CustomerName" ("Customer Name"). This means that it will order them by country, but if some rows have the same country, they will be ordered by customer name:
Run SQLSELECT * FROM Customers
ORDER BY Country, CustomerName
The following SQL statement selects all customers from the "Customers" table, sorted in ascending order by the "Country" column and in descending order by the "CustomerName" column:
Run SQLSELECT * FROM Customers
ORDER BY Country ASC, CustomerName DESC